acm: Updating a policy on a running system.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Wed, 25 Apr 2007 08:40:02 +0000 (09:40 +0100)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Wed, 25 Apr 2007 08:40:02 +0000 (09:40 +0100)
commit260c2c91b7deab998a801ca77580fb6f2d3c1704
tree3178ea4dc361fc59c5b6d28f4487079b288178f8
parent8c706ec28d6ac4805a513fe29850a97773a9a4ee
acm: Updating a policy on a running system.

Allow a policy to be updated on a running system and domains to be
relabeled. The updating of a policy is happening in several steps:
relabeling the domains, testing whether the system would be in a valid
state after the relabeling (according to the policy), committing the
changes if state is determined to be valid.

I have followed Keir's suggestion of building a 2nd linked list
parallel to the domain list. That 2nd list holds security information
related to the running domains. Each entry is pointed to by its domain
structure. The list is protected by its own read/write-lock. I have
moved nearly all ACM-related code that was traversing the domain list
previously to traverse this list instead and not hold onto the domain
list lock.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
xen/acm/acm_chinesewall_hooks.c
xen/acm/acm_core.c
xen/acm/acm_null_hooks.c
xen/acm/acm_policy.c
xen/acm/acm_simple_type_enforcement_hooks.c
xen/common/acm_ops.c
xen/include/acm/acm_core.h
xen/include/acm/acm_hooks.h
xen/include/public/acm.h
xen/include/public/acm_ops.h